﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using FortuneHeaven.Web.Common;
using FortuneHeavenBAL;
using FortuneHeavenCommon.DataMap;
using FortuneHeavenCommon.ComMethod;

namespace FortuneHeaven.Web.Pages.UserCenter
{
    public partial class UserRegister : BasePage
    {
        public string Province;
        public string City;
        public string Year;
        public string Month;
        public string Day;
        public string FaceID;
        public string Gender;
        protected void Page_Load(object sender, EventArgs e)
        {
            Year = Request["myyear"];
            Month = Request["mymonth"];
            Day = Request["myday"];
            FaceID = Request["in_FaceID"];
            Gender = Request["Gender"];
            if (!IsPostBack)
            {
                SetPageHeader(FortuneHeavenCommon.Enum.MainPageTabType.hidden);
              
                FaceID = "0";
                Gender = "1";
                if (!string.IsNullOrEmpty(Request["spread_name"]))
                {
                    this.txtSpread.Text = Server.UrlDecode(Request["spread_name"]);
                    this.txtSpread.Enabled = false;
                    
                }
                try
                {
                    IpDetail ipdetail = IpHelper.Get(Request.UserHostAddress, null);

                    if (ipdetail != null)
                    {
                        this.lbProvince.Text = !string.IsNullOrEmpty(ipdetail.Province) ? ipdetail.Province : "无";
                        this.lbCity.Text = !string.IsNullOrEmpty(ipdetail.City) ? ipdetail.City : "无";
                    }
                }
                catch
                { 
                
                }
            }
        }

        public void RegisterAcount(object sender, EventArgs e)
        {
            
            AccountsInfoBO bo = new AccountsInfoBO();
            string acountname = this.txtAcount.Text.Trim();
            string keys = @"， 。 、 》 《 ？ / * - + • ~ . ！ # ￥ % … … & * （ ） — — + - = 日 操 干 艹 妈 球 求 法轮 洪志 大纪元 新唐人 强奸 肉棍 淫靡 淫水 六四事件 迷药 窃听器 六合彩 买卖枪支 退党 三唑仑 麻醉药 麻醉乙醚 帝国之梦 毛一鲜 黎阳评 色情 出售枪支 迷药 摇头丸 天葬 鬼村 军长发威 PK黑社会 恶搞晚会 枪决女犯 投毒杀人 强硬发言 出售假币 监听王 昏药 侦探设备 麻醉钢枪 反华 官商勾结 升达 手机复制 戴海静 自杀指南 自杀手册 张小平 安定片 蒙汗 古方迷香 失意药 迷歼药 透视眼镜 远程偷拍 自制手枪 子女任职名单 激情小电影 黄色小电影 小电影 天鹅之旅 盘古乐队 高校暴乱 群体事件 大学骚乱 高校骚乱 催情药 拍肩神药 春药 窃听器材 身份证生成 枪决现场 出售手枪 麻醉枪 办理证件 办理文凭 疆独 藏独 高干子弟 高干子女 枪支弹药 血腥图片 反政府 禁书 无界 特码 反共 成人 换妻 三级片 本拉登 地下先烈 领导财产公示 GPS预警器 毛主席复活 防拍器 电子狗 曝光王 隐形喷剂 催情水 变声电话 变声器 代开发票 死亡笔记 死亡日志 宋平顺 四种当 黄色图片 性爱电影 黄色电影 激情视频 激情图片 激情电影 十八禁 18禁 淫荡 毛片 脱衣舞 江姐问 董存瑞问 吴琼花问 拉登熟知中国 激情自拍 淫书 美女 监听器 淫奸 淫乱 同居社区 淫虫 右派 赌博专用 透视器 核武器 透视照片 拦截器 冰毒 K粉 麻古 万能钥匙 赌博粉 地磅仪 无网界 性网 军火 广安事件 炒股国歌 素女 裸体 乱伦 嫖妓 嫖鸡 小穴 淫魔 做鸡 口交 粗口歌 a片 性虐待 女优 包娃衣 耽美 金瓶梅 18N 丝袜写真 维多利亚包 花花公子 大禁 美腿写真 H漫画 隐私1图片 H电影 H动漫 龙虎豹 啄木鸟公司 巴拉斯 玉蒲团 无码 PLAYBOY ANDREWBLAKE 少儿不宜 藏春阁 痴汉是犯罪 裸女对对碰 偷窥有罪 虎胆雄心 买春堂 护士24点 秘密潜入 欲望格斗 七宗罪 尾行 冠军足球经理 命令与征服 性感扑克 六月联盟 The3FeelOnline 采花堂 爱姐妹 露拉3D 吸血莱恩 hcartoon 梦幻麻将馆 足球经理2005 性福人生 禁忌试玩 沉默杀手 惊悚空间 美少女麻雀 杨思敏 人工少女 电车之狼 Quake 监禁 臭作 欲望之血 性感沙滩 遗作 色狼网 ILLUSION 红河谷论坛 AV麻将 恐惧杀手 波动少女 MC军团 恐怖牢笼 反雷达测速 英语枪手 假钞 电话拦截 探测狗 手机跟踪 监听宝 针孔摄像 短信群发器 邮件群发器 信息群发器 反中游行 中国断交 大规模游行 中国政治力量 政府禁令 泽东 恩来 锦涛 小平 少奇 法轮 二奶 政府 上海交大 拆迁 水扁 301医院 达赖 明慧 美国之音 活体 蒙汗药 迷魂 迷奸 主席 总理 石靖 日本 台湾 朝鲜";
            
            string[] checkkeys =keys.Split(' ');
            string test = acountname.ToLower();
            foreach (string k in checkkeys)
            {
                if (test.Contains(k.ToLower()))
                {
                    ShowCurError("注册帐号含有非法字符!");
                    return;
                }
            }
            if (test.Contains(' '))
            {
                ShowCurError("注册帐号含有非法字符!");
                return;
            }
            AccountsInfo acount = new AccountsInfo();
            acount.Accounts = acountname;
            acount.LogonPass = CommonEncrypt.ClientEncrypt(this.txtPwd.Text);
            acount.SpreadName = this.txtSpread.Text.Trim();
            acount.FaceID = GetInt(FaceID);
            acount.Gender = GetInt(Gender);
            acount.RegisterIP = Request.UserHostAddress;
            acount.MachineSerial = "";

            acount.Add_RealName = this.txtRealName.Text;
            acount.Add_Area = this.txtRealArea.Text;
            acount.Add_IDNumber = this.txtIDCard.Text;
            acount.Add_MobilePhone = this.txtMobile.Text;
            
            acount.Add_BankID = "";
            acount.Add_BankName = "";
            string error = "";
            if (!bo.RegisterNameAcount(acount, ref error))
            {
                ShowCurError(error);
            }
            else
            {
                AccountsInfo newacount = bo.GetLightAcountInfor(acountname);
                UserInforBO userbo = new UserInforBO();
                UserInfor user = new UserInfor();
                //user.FaceID = GetInt(FaceID);
                user.IDCard = this.txtIDCard.Text;
                user.RegisterEmail = this.txtMail.Text;
                user.RegisterQuestion = this.txtQuestion.Text;
                user.RegisterAnswer = this.txtAnswer.Text;
                user.City = (this.lbCity.Text == "无" ? "" : this.lbCity.Text); ;
                user.UserID = newacount.UserID;
                user.Province = (this.lbProvince.Text == "无" ? "" : this.lbProvince.Text);
                user.Portrait = this.txtRealArea.Text;
                user.IsSpread = cbSpread.Checked ? 1 : 0;
                DateTime birth = DateTime.Now;
                if (!string.IsNullOrEmpty(Year) && !string.IsNullOrEmpty(Month) && !string.IsNullOrEmpty(Day))
                {
                    birth = DateTime.Parse(string.Format("{0}/{1}/{2}", Year, Month, Day));
                }
                user.Birthday = birth;
                userbo.SaveUserInfor(user);

                Response.Redirect(string.Format("RegisterSuccess.aspx?acount={0}&gameid={1}{2}", acountname, newacount.GameID,
                    cbSpread.Checked ? "&spread_name=" + acountname : ""));
            }

        }
    }
}